This blog post is reflection writing based on my coding practices and the challenges of responsive design
The relationship between my CSS, HTML, and JavaScript is extremely close. To start with, the selectors I use in my CSS are classes that are defined in my HTML documentation,
and are also referenced in my JavaScript code. In order to apply specific styling to an element in HTML, I need to tag it with a class, id, or element type in my CSS.
Similarly, in my JavaScript, I can't use a query selector to target an element that doesn't exist in the HTML documentation, or to target an element that has a type and class linked together.
Maintaining consistency in writing, spelling, and case sensitivity is crucial to ensure that the appropriate styling is applied to the correct HTML element,
and this consistency also helps streamline my JavaScript code.
The structure of my HTML document also influences how I write my CSS selectors. For instance, if I have a nested HTML structure,
I may need to use descendant selectors or child selectors to target specific elements. The properties I define in my CSS stylesheets affect how HTML elements are rendered and behave,
and JavaScript can also manipulate these properties dynamically, creating a seamless interaction between the three languages. JavaScript events, such as click or hover,
often rely on HTML elements and their corresponding CSS styles, allowing me to create dynamic effects or interactions that enhance the user experience.
JavaScript's ability to manipulate the Document Object Model (DOM) enables me to dynamically add, remove, or modify HTML elements and their associated CSS styles,
making it possible to create complex web applications. CSS preprocessing tools like Sass or Less allow me to write more efficient and modular CSS code,
which can then be compiled into regular CSS. Understanding how JavaScript libraries and frameworks work is also essential to effectively integrating CSS, HTML, and JavaScript.
Finally, ensuring that my code works across different browsers and devices requires careful consideration of browser-specific quirks and inconsistencies, making it possible to write more robust and compatible code.
The benefits and challenges of Responsive Design
Responsive Design is difficult. That cannot go unsaid. Not only does it contribute to the overall user experience of a website but it also streamlines the site to being user friendly
and accessible. As such, responsive design offers numerous benefits, including improved user experience, increased mobile traffic, and enhanced search engine optimization (SEO).
With a responsive website, users can easily navigate and access content on various devices(heavy on the media queries that this requires for then accesiblity to work completely),
leading to higher engagement and conversion rates. Additionally, responsive design eliminates the need for separate websites for different devices, reducing development and maintenance costs.
Furthermore, Google recommends responsive design as the best approach for mobile-friendliness, which is a key ranking factor because at the end pof the day , not everyone has a laptop or desktop
and majority of people usually dont carry those arropund everywhere. Intead , they carry their phones.
At the same time , responsive design also presents some challenges. One of the main challenges is the need for complex coding and styling, which can be time-consuming and require specialized skills.
Another challenge is ensuring that the design looks and functions well across various devices and screen sizes, which can be a daunting task. It becomes a trial and error process where you have to keep trying
until the site looks and is usable on different devices. Moreover, responsive design may require significant changes to existing websites, which can be a significant undertaking.
Finally, some older browsers may not support responsive design, which can lead to compatibility issues. Despite these challenges, the benefits of responsive design make it a crucial aspect of modern web development
and maybe matter more than challenges if one is up for the great amout of work to be done to achieve a highly respoonsive site.
Coding practices I should be aware of when thinking of how my code matters in decolonialism
As I reflect on my coding practice, I recognize the need to be mindful of the language and terminology I use, avoiding terms that perpetuate colonialism, oppression, or cultural appropriation.
I strive to prioritize cultural sensitivity, considering the potential impact of my code on diverse communities and considering biases in data, algorithms, or AI decision-making processes.
I try to make my code inclusive and accessible, working for diverse users, languages, and abilities. For example, I ensure that my code is accessible to everyone, including people with disabilities.
I add alt text to images, making it possible for blind people to read the description in braille. I also ensure that my code is compatible with screen readers and other assistive technologies.
Furthermore, I actively work to dismantle the principles of colonialism that perpetuate separation and hierarchy, instead striving for inclusivity and equity in my code.
By decentering dominant Western or colonial viewpoints and seeking out diverse perspectives, I hope to create code that is more ethical, inclusive, and respectful.
Through ongoing learning and reflection, I aim to continually improve my practice and contribute to a more decolonial and equitable tech industry.
Comment down below (Click here to see if your comment was saved after posting it)